package com.lengxf.pay.icbc.bean.payBack;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.lengxf.pay.icbc.bean.base.BaeCommonRes;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDate;

@Data
@EqualsAndHashCode(callSuper = true)
public class PayBackBizContent extends BaeCommonRes {
    //用户唯一标识
    @JsonProperty("cust_id")
    private String custId;

    //屏蔽后的银行卡号
    @JsonProperty("card_no")
    private String cardNo;

    //订单总金额，单位：分
    @JsonProperty("total_amt")
    private String totalAmt;

    //积分抵扣金额，单位：分
    @JsonProperty("point_amt")
    private String pointAmt;

    //电子券抵扣金额，单位：分
    @JsonProperty("ecoupon_amt")
    private String ecouponAmt;

    //优惠立减金额（商户部分），单位：分
    @JsonProperty("mer_disc_amt")
    private String merDiscAmt;

    //优惠券金额，单位：分
    @JsonProperty("coupon_amt")
    private String couponAmt;

    //银行补贴金额，单位：分
    @JsonProperty("bank_disc_amt")
    private String bankDiscAmt;

    //用户实际扣减金额，单位：分
    @JsonProperty("payment_amt")
    private String paymentAmt;

    //商户系统订单号，原样返回
    @JsonProperty("out_trade_no")
    private String outTradeNo;

    //行内系统订单号(特约商户27位，特约部门30位)
    @JsonProperty("order_id")
    private String orderId;

    //支付完成时间，yyyyMMdd格式
    @JsonProperty("pay_time")
    @JsonFormat(pattern = "yyyyMMdd")
    private LocalDate payTime;

    //总优惠金额，其值=优惠立减金额（商户部分）+银行补贴金额，单位：分
    @JsonProperty("total_disc_amt")
    private String totalDiscAmt;

    //商户线下档案编号(特约商户12位，特约部门15位)
    @JsonProperty("mer_id")
    private String merId;

    //生成二维码时商户上送的附加数据，原样返回
    @JsonProperty("attach")
    private String attach;

}
